package com.situ.vivamarket.service.front.impl;

import com.situ.vivamarket.dao.CartItemDao;
import com.situ.vivamarket.model.front.CartItem;
import com.situ.vivamarket.service.front.CartItemService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class CartItemServiceImpl implements CartItemService {
    CartItemDao cartItemDao;
    @Autowired
    public void setCartItemDao(CartItemDao cartItemDao) {
        this.cartItemDao = cartItemDao;
    }

    @Override
    public boolean addCartItem(CartItem ci) {
//        判断是否在购物车里有数据了
        CartItem ciFind=this.cartItemDao.findByUnique(ci);
        if(ciFind==null){
            return this.cartItemDao.insert(ci)>0;
        }else{
            ciFind.setQuantity(ci.getQuantity()+ciFind.getQuantity());
            return this.cartItemDao.updateQty(ciFind)>0;
        }

    }

    @Override
    public List<CartItem> getCartItemsByMemberId(Integer memberId) {
        return this.cartItemDao.findByMemberId(memberId);
    }

    @Override
    public boolean updateQty(CartItem ci) {
        return this.cartItemDao.updateQty(ci)>0;
    }

    @Override
    public int deleteByIds(Integer[] ids) {
        return cartItemDao.deleteByIds(ids);
    }
}
